﻿using System;

namespace AiAsteriods.Game.Tools {
  [Serializable]
  public struct Config {
    // Ship and Bullet Settings
    public bool GodMode { get; set; }
    public float ShipMoveSpeed { get; set; }
    public float ShipMaxMoveSpeed { get; set; }
    public float ShipTurnSpeed { get; set; }
    public float BulletSpeed { get; set; }
    public float EnemyProximityMult { get; set; }
    public bool DoubleShot { get; set; }
    public bool UseG { get; set; }
    public bool UseH { get; set; }
    public bool UseU { get; set; }

    // Minimax Settings
    public int MaxDepth { get; set; }
    public int MaxActions { get; set; }

    // Enemy Settings
    public int EnemyCongestion { get; set; }
    public bool EnemyFollowPlayer { get; set; }
    public double EnemySpeed { get; set; }

    // Grid Settings
    public int GridRes { get; set; }
    public int RCRadius { get; set; }
    public int RLRAngle { get; set; }
    public int RSAngle { get; set; }
    public bool RCLoop { get; set; }

    // Score Settings
    public int ScorePerSecond { get; set; }
    public int ScorePerKill { get; set; }

    // Game Settings
    public bool AutoReset { get; set; }
    public int AutoResetWait { get; set; }
  }
}